/*******************************************************************************
 * Copyright (c) 2007, Geophysical Center RAS
 * Sergey Berezin, Dmitry Voitsekhovskiy
 * All rights reserved.
 *
 * Redistribution and use in source and binary forms,
 * with or without modification, are permitted provided
 * that the following conditions are met:
 *
 * - Redistributions of source code must retain the above copyright notice,
 * this list of conditions and the following disclaimer.
 *
 * - Redistributions in binary form must reproduce the above copyright notice,
 * this list of conditions and the following disclaimer in the documentation
 * and/or other materials provided with the distribution.
 *
 * - Neither the name of the Geophysical Center RAS nor the names
 * of its contributors may be used to endorse or promote products
 * derived from this software without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
 * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
 * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
 * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
 * THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 ******************************************************************************/
﻿//------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//     Runtime Version:2.0.50727.42
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
// Modified fy vassilyl@microsoft.com
//
using System;
using System.ComponentModel;
using System.Diagnostics;
using System.Web.Services;
using System.Web.Services.Protocols;
using System.Xml.Serialization;

namespace DAI.ClientToolkit
{

    // 
    // This source code was auto-generated by wsdl, Version=2.0.50727.42.
    // 


    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Web.Services.WebServiceBindingAttribute(Name = "DataServicePortTypeSOAPBinding", Namespace = "http://ogsadai.org.uk/namespaces/2005/10/service/wsi/dataservice/bindings")]
    public partial class DataServiceStub : System.Web.Services.Protocols.SoapHttpClientProtocol
    {

        private System.Threading.SendOrPostCallback listResourcesOperationCompleted;

        private System.Threading.SendOrPostCallback getVersionOperationCompleted;

        private System.Threading.SendOrPostCallback performOperationCompleted;

        private System.Threading.SendOrPostCallback terminateOperationCompleted;

        private System.Threading.SendOrPostCallback putFullyOperationCompleted;

        private System.Threading.SendOrPostCallback putBlockOperationCompleted;

        private System.Threading.SendOrPostCallback getFullyOperationCompleted;

        private System.Threading.SendOrPostCallback getBlockOperationCompleted;

        private System.Threading.SendOrPostCallback getNBlocksOperationCompleted;

        private System.Threading.SendOrPostCallback GetResourcePropertyOperationCompleted;

        private System.Threading.SendOrPostCallback GetMultipleResourcePropertiesOperationCompleted;

        /// <remarks/>
        public DataServiceStub(string Url)
        {
            this.Url = Url;
        }

        /// <remarks/>
        public event listResourcesCompletedEventHandler listResourcesCompleted;

        /// <remarks/>
        public event getVersionCompletedEventHandler getVersionCompleted;

        /// <remarks/>
        public event performCompletedEventHandler performCompleted;

        /// <remarks/>
        public event terminateCompletedEventHandler terminateCompleted;

        /// <remarks/>
        public event putFullyCompletedEventHandler putFullyCompleted;

        /// <remarks/>
        public event putBlockCompletedEventHandler putBlockCompleted;

        /// <remarks/>
        public event getFullyCompletedEventHandler getFullyCompleted;

        /// <remarks/>
        public event getBlockCompletedEventHandler getBlockCompleted;

        /// <remarks/>
        public event getNBlocksCompletedEventHandler getNBlocksCompleted;

        /// <remarks/>
        public event GetResourcePropertyCompletedEventHandler GetResourcePropertyCompleted;

        /// <remarks/>
        public event GetMultipleResourcePropertiesCompletedEventHandler GetMultipleResourcePropertiesCompleted;

        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://ogsadai.org.uk/namespaces/2005/10/service/wsi/dataservice#listResources", RequestNamespace = "http://ogsadai.org.uk/namespaces/2005/10/service/types", ResponseNamespace = "http://ogsadai.org.uk/namespaces/2005/10/service/types", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("resource")]
        public string[] listResources(string @void)
        {
            object[] results = this.Invoke("listResources", new object[] {
                    @void});
            return ((string[])(results[0]));
        }

        /// <remarks/>
        public void listResourcesAsync(string @void)
        {
            this.listResourcesAsync(@void, null);
        }

        /// <remarks/>
        public void listResourcesAsync(string @void, object userState)
        {
            if ((this.listResourcesOperationCompleted == null))
            {
                this.listResourcesOperationCompleted = new System.Threading.SendOrPostCallback(this.OnlistResourcesOperationCompleted);
            }
            this.InvokeAsync("listResources", new object[] {
                    @void}, this.listResourcesOperationCompleted, userState);
        }

        private void OnlistResourcesOperationCompleted(object arg)
        {
            if ((this.listResourcesCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.listResourcesCompleted(this, new listResourcesCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://ogsadai.org.uk/namespaces/2005/10/service/wsi/dataservice#getVersion", RequestNamespace = "http://ogsadai.org.uk/namespaces/2005/10/service/types", ResponseNamespace = "http://ogsadai.org.uk/namespaces/2005/10/service/types", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("version")]
        public string getVersion()
        {
            object[] results = this.Invoke("getVersion", new object[0]);
            return ((string)(results[0]));
        }

        /// <remarks/>
        public void getVersionAsync()
        {
            this.getVersionAsync(null);
        }

        /// <remarks/>
        public void getVersionAsync(object userState)
        {
            if ((this.getVersionOperationCompleted == null))
            {
                this.getVersionOperationCompleted = new System.Threading.SendOrPostCallback(this.OngetVersionOperationCompleted);
            }
            this.InvokeAsync("getVersion", new object[0], this.getVersionOperationCompleted, userState);
        }

        private void OngetVersionOperationCompleted(object arg)
        {
            if ((this.getVersionCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.getVersionCompleted(this, new getVersionCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://ogsadai.org.uk/namespaces/2005/10/service/wsi/dataservice#perform", RequestNamespace = "http://ogsadai.org.uk/namespaces/2005/10/service/perform/types", ResponseNamespace = "http://ogsadai.org.uk/namespaces/2005/10/service/perform/types", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public System.Xml.XmlElement perform(System.Xml.XmlElement performDocument)
        {
            object[] results = this.Invoke("perform", new object[] {
                    performDocument});
            return ((System.Xml.XmlElement)(results[0]));
        }

        /// <remarks/>
        public void performAsync(System.Xml.XmlElement performDocument)
        {
            this.performAsync(performDocument, null);
        }

        /// <remarks/>
        public void performAsync(System.Xml.XmlElement performDocument, object userState)
        {
            if ((this.performOperationCompleted == null))
            {
                this.performOperationCompleted = new System.Threading.SendOrPostCallback(this.OnperformOperationCompleted);
            }
            this.InvokeAsync("perform", new object[] {
                    performDocument}, this.performOperationCompleted, userState);
        }

        private void OnperformOperationCompleted(object arg)
        {
            if ((this.performCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.performCompleted(this, new performCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://ogsadai.org.uk/namespaces/2005/10/service/wsi/dataservice#terminate", RequestNamespace = "http://ogsadai.org.uk/namespaces/2005/10/service/perform/types", ResponseNamespace = "http://ogsadai.org.uk/namespaces/2005/10/service/perform/types", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void terminate()
        {
            this.Invoke("terminate", new object[0]);
        }

        /// <remarks/>
        public void terminateAsync()
        {
            this.terminateAsync(null);
        }

        /// <remarks/>
        public void terminateAsync(object userState)
        {
            if ((this.terminateOperationCompleted == null))
            {
                this.terminateOperationCompleted = new System.Threading.SendOrPostCallback(this.OnterminateOperationCompleted);
            }
            this.InvokeAsync("terminate", new object[0], this.terminateOperationCompleted, userState);
        }

        private void OnterminateOperationCompleted(object arg)
        {
            if ((this.terminateCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.terminateCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://ogsadai.org.uk/namespaces/2005/10/service/wsi/dataservice#putFully", RequestNamespace = "http://ogsadai.org.uk/namespaces/2005/10/service/transport/types", ResponseElementName = "putResponse", ResponseNamespace = "http://ogsadai.org.uk/namespaces/2005/10/service/transport/types", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void putFully(string id, System.Xml.XmlElement data)
        {
            this.Invoke("putFully", new object[] {
                    id,
                    data});
        }

        /// <remarks/>
        public void putFullyAsync(string id, System.Xml.XmlElement data)
        {
            this.putFullyAsync(id, data, null);
        }

        /// <remarks/>
        public void putFullyAsync(string id, System.Xml.XmlElement data, object userState)
        {
            if ((this.putFullyOperationCompleted == null))
            {
                this.putFullyOperationCompleted = new System.Threading.SendOrPostCallback(this.OnputFullyOperationCompleted);
            }
            this.InvokeAsync("putFully", new object[] {
                    id,
                    data}, this.putFullyOperationCompleted, userState);
        }

        private void OnputFullyOperationCompleted(object arg)
        {
            if ((this.putFullyCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.putFullyCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        /*    
            /// <remarks/>
            [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://ogsadai.org.uk/namespaces/2005/10/service/wsi/dataservice#putBlock", RequestNamespace="http://ogsadai.org.uk/namespaces/2005/10/service/transport/types", ResponseElementName="putResponse", ResponseNamespace="http://ogsadai.org.uk/namespaces/2005/10/service/transport/types", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
            public void putBlock(string id, System.Xml.XmlElement data) {
                this.Invoke("putBlock", new object[] {
                            id,
                            data});
            }
    
            /// <remarks/>
            public void putBlockAsync(string id, System.Xml.XmlElement data) {
                this.putBlockAsync(id, data, null);
            }
    
            /// <remarks/>
            public void putBlockAsync(string id, System.Xml.XmlElement data, object userState) {
                if ((this.putBlockOperationCompleted == null)) {
                    this.putBlockOperationCompleted = new System.Threading.SendOrPostCallback(this.OnputBlockOperationCompleted);
                }
                this.InvokeAsync("putBlock", new object[] {
                            id,
                            data}, this.putBlockOperationCompleted, userState);
            }
    
            private void OnputBlockOperationCompleted(object arg) {
                if ((this.putBlockCompleted != null)) {
                    System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                    this.putBlockCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
                }
            }
        */
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://ogsadai.org.uk/namespaces/2005/10/service/wsi/dataservice#getFully", RequestNamespace = "http://ogsadai.org.uk/namespaces/2005/10/service/transport/types", ResponseElementName = "getResponse", ResponseNamespace = "http://ogsadai.org.uk/namespaces/2005/10/service/transport/types", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        [return: System.Xml.Serialization.XmlElementAttribute("result")]
        public System.Xml.XmlElement getFully(string id)
        {
            object[] results = this.Invoke("getFully", new object[] {
                    id});
            return ((System.Xml.XmlElement)(results[0]));
        }

        /// <remarks/>
        public void getFullyAsync(string id)
        {
            this.getFullyAsync(id, null);
        }

        /// <remarks/>
        public void getFullyAsync(string id, object userState)
        {
            if ((this.getFullyOperationCompleted == null))
            {
                this.getFullyOperationCompleted = new System.Threading.SendOrPostCallback(this.OngetFullyOperationCompleted);
            }
            this.InvokeAsync("getFully", new object[] {
                    id}, this.getFullyOperationCompleted, userState);
        }

        private void OngetFullyOperationCompleted(object arg)
        {
            if ((this.getFullyCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.getFullyCompleted(this, new getFullyCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        /*    
            /// <remarks/>
            [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://ogsadai.org.uk/namespaces/2005/10/service/wsi/dataservice#getBlock", RequestNamespace="http://ogsadai.org.uk/namespaces/2005/10/service/transport/types", ResponseElementName="getResponse", ResponseNamespace="http://ogsadai.org.uk/namespaces/2005/10/service/transport/types", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
            [return: System.Xml.Serialization.XmlElementAttribute("result")]
            public System.Xml.XmlElement getBlock(string id) {
                object[] results = this.Invoke("getBlock", new object[] {
                            id});
                return ((System.Xml.XmlElement)(results[0]));
            }
    
            /// <remarks/>
            public void getBlockAsync(string id) {
                this.getBlockAsync(id, null);
            }
    
            /// <remarks/>
            public void getBlockAsync(string id, object userState) {
                if ((this.getBlockOperationCompleted == null)) {
                    this.getBlockOperationCompleted = new System.Threading.SendOrPostCallback(this.OngetBlockOperationCompleted);
                }
                this.InvokeAsync("getBlock", new object[] {
                            id}, this.getBlockOperationCompleted, userState);
            }
    
            private void OngetBlockOperationCompleted(object arg) {
                if ((this.getBlockCompleted != null)) {
                    System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                    this.getBlockCompleted(this, new getBlockCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
                }
            }
    
            /// <remarks/>
            [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://ogsadai.org.uk/namespaces/2005/10/service/wsi/dataservice#getNBlocks", RequestNamespace="http://ogsadai.org.uk/namespaces/2005/10/service/transport/types", ResponseElementName="getResponse", ResponseNamespace="http://ogsadai.org.uk/namespaces/2005/10/service/transport/types", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
            [return: System.Xml.Serialization.XmlElementAttribute("result")]
            public System.Xml.XmlElement getNBlocks(string id, int numberOfBlocks) {
                object[] results = this.Invoke("getNBlocks", new object[] {
                            id,
                            numberOfBlocks});
                return ((System.Xml.XmlElement)(results[0]));
            }
    
            /// <remarks/>
            public void getNBlocksAsync(string id, int numberOfBlocks) {
                this.getNBlocksAsync(id, numberOfBlocks, null);
            }
    
            /// <remarks/>
            public void getNBlocksAsync(string id, int numberOfBlocks, object userState) {
                if ((this.getNBlocksOperationCompleted == null)) {
                    this.getNBlocksOperationCompleted = new System.Threading.SendOrPostCallback(this.OngetNBlocksOperationCompleted);
                }
                this.InvokeAsync("getNBlocks", new object[] {
                            id,
                            numberOfBlocks}, this.getNBlocksOperationCompleted, userState);
            }
    
            private void OngetNBlocksOperationCompleted(object arg) {
                if ((this.getNBlocksCompleted != null)) {
                    System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                    this.getNBlocksCompleted(this, new getNBlocksCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
                }
            }
         */
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute(
            "http://www.ibm.com/xmlns/stdwip/web-services/WS-ResourceProperties#GetResourceProperty",
          RequestNamespace = "http://www.ibm.com/xmlns/stdwip/web-services/WS-ResourceProperties",
          ResponseNamespace = "http://www.ibm.com/xmlns/stdwip/web-services/WS-ResourceProperties",
           Use = System.Web.Services.Description.SoapBindingUse.Literal, 
            ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Default)]
        [return: System.Xml.Serialization.XmlElementAttribute("GetResourcePropertyResponse", Namespace = "http://www.ibm.com/xmlns/stdwip/web-services/WS-ResourceProperties")]
        public GetResourcePropertyResponse GetResourceProperty([System.Xml.Serialization.XmlElementAttribute(Namespace = "http://www.ibm.com/xmlns/stdwip/web-services/WS-ResourceProperties")] System.Xml.XmlQualifiedName GetResourcePropertyRequest)
        {
            object[] results = this.Invoke("GetResourceProperty", new object[] {
                    GetResourcePropertyRequest});
            return ((GetResourcePropertyResponse)(results[0]));
        }

        /// <remarks/>
        public void GetResourcePropertyAsync(System.Xml.XmlQualifiedName GetResourcePropertyRequest)
        {
            this.GetResourcePropertyAsync(GetResourcePropertyRequest, null);
        }

        /// <remarks/>
        public void GetResourcePropertyAsync(System.Xml.XmlQualifiedName GetResourcePropertyRequest, object userState)
        {
            if ((this.GetResourcePropertyOperationCompleted == null))
            {
                this.GetResourcePropertyOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetResourcePropertyOperationCompleted);
            }
            this.InvokeAsync("GetResourceProperty", new object[] {
                    GetResourcePropertyRequest}, this.GetResourcePropertyOperationCompleted, userState);
        }

        private void OnGetResourcePropertyOperationCompleted(object arg)
        {
            if ((this.GetResourcePropertyCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetResourcePropertyCompleted(this, new GetResourcePropertyCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://www.ibm.com/xmlns/stdwip/web-services/WS-ResourceProperties#GetMultipleRes" +
            "ourceProperties", Use = System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle = System.Web.Services.Protocols.SoapParameterStyle.Bare)]
        [return: System.Xml.Serialization.XmlElementAttribute("GetMultipleResourcePropertiesResponse", Namespace = "http://www.ibm.com/xmlns/stdwip/web-services/WS-ResourceProperties")]
        public GetMultipleResourcePropertiesResponse GetMultipleResourceProperties([System.Xml.Serialization.XmlArrayAttribute(Namespace = "http://www.ibm.com/xmlns/stdwip/web-services/WS-ResourceProperties")] [System.Xml.Serialization.XmlArrayItemAttribute("ResourceProperty", Form = System.Xml.Schema.XmlSchemaForm.Unqualified, IsNullable = false)] System.Xml.XmlQualifiedName[] GetMultipleResourcePropertiesRequest)
        {
            object[] results = this.Invoke("GetMultipleResourceProperties", new object[] {
                    GetMultipleResourcePropertiesRequest});
            return ((GetMultipleResourcePropertiesResponse)(results[0]));
        }

        /// <remarks/>
        public void GetMultipleResourcePropertiesAsync(System.Xml.XmlQualifiedName[] GetMultipleResourcePropertiesRequest)
        {
            this.GetMultipleResourcePropertiesAsync(GetMultipleResourcePropertiesRequest, null);
        }

        /// <remarks/>
        public void GetMultipleResourcePropertiesAsync(System.Xml.XmlQualifiedName[] GetMultipleResourcePropertiesRequest, object userState)
        {
            if ((this.GetMultipleResourcePropertiesOperationCompleted == null))
            {
                this.GetMultipleResourcePropertiesOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetMultipleResourcePropertiesOperationCompleted);
            }
            this.InvokeAsync("GetMultipleResourceProperties", new object[] {
                    GetMultipleResourcePropertiesRequest}, this.GetMultipleResourcePropertiesOperationCompleted, userState);
        }

        private void OnGetMultipleResourcePropertiesOperationCompleted(object arg)
        {
            if ((this.GetMultipleResourcePropertiesCompleted != null))
            {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetMultipleResourcePropertiesCompleted(this, new GetMultipleResourcePropertiesCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }

        /// <remarks/>
        public new void CancelAsync(object userState)
        {
            base.CancelAsync(userState);
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
    public partial class GetResourcePropertyResponse : object, System.ComponentModel.INotifyPropertyChanged
    {

        private System.Xml.XmlElement[] anyField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute()]
        public System.Xml.XmlElement[] Any
        {
            get
            {
                return this.anyField;
            }
            set
            {
                if ((this.anyField != value))
                {
                    this.anyField = value;
                    this.RaisePropertyChanged("Any");
                }
            }
        }

        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;

        protected void RaisePropertyChanged(string propertyName)
        {
            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if ((propertyChanged != null))
            {
                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.SerializableAttribute()]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
    public partial class GetMultipleResourcePropertiesResponse : object, System.ComponentModel.INotifyPropertyChanged
    {

        private System.Xml.XmlElement[] anyField;

        /// <remarks/>
        [System.Xml.Serialization.XmlAnyElementAttribute()]
        public System.Xml.XmlElement[] Any
        {
            get
            {
                return this.anyField;
            }
            set
            {
                if ((this.anyField != value))
                {
                    this.anyField = value;
                    this.RaisePropertyChanged("Any");
                }
            }
        }

        public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;

        protected void RaisePropertyChanged(string propertyName)
        {
            System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged;
            if ((propertyChanged != null))
            {
                propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName));
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void listResourcesCompletedEventHandler(object sender, listResourcesCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class listResourcesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
    {

        private object[] results;

        internal listResourcesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState)
            :
                base(exception, cancelled, userState)
        {
            this.results = results;
        }

        /// <remarks/>
        public string[] Result
        {
            get
            {
                this.RaiseExceptionIfNecessary();
                return ((string[])(this.results[0]));
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void getVersionCompletedEventHandler(object sender, getVersionCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class getVersionCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
    {

        private object[] results;

        internal getVersionCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState)
            :
                base(exception, cancelled, userState)
        {
            this.results = results;
        }

        /// <remarks/>
        public string Result
        {
            get
            {
                this.RaiseExceptionIfNecessary();
                return ((string)(this.results[0]));
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void performCompletedEventHandler(object sender, performCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class performCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
    {

        private object[] results;

        internal performCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState)
            :
                base(exception, cancelled, userState)
        {
            this.results = results;
        }

        /// <remarks/>
        public System.Xml.XmlElement Result
        {
            get
            {
                this.RaiseExceptionIfNecessary();
                return ((System.Xml.XmlElement)(this.results[0]));
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void terminateCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void putFullyCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void putBlockCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void getFullyCompletedEventHandler(object sender, getFullyCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class getFullyCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
    {

        private object[] results;

        internal getFullyCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState)
            :
                base(exception, cancelled, userState)
        {
            this.results = results;
        }

        /// <remarks/>
        public System.Xml.XmlElement Result
        {
            get
            {
                this.RaiseExceptionIfNecessary();
                return ((System.Xml.XmlElement)(this.results[0]));
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void getBlockCompletedEventHandler(object sender, getBlockCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class getBlockCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
    {

        private object[] results;

        internal getBlockCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState)
            :
                base(exception, cancelled, userState)
        {
            this.results = results;
        }

        /// <remarks/>
        public System.Xml.XmlElement Result
        {
            get
            {
                this.RaiseExceptionIfNecessary();
                return ((System.Xml.XmlElement)(this.results[0]));
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void getNBlocksCompletedEventHandler(object sender, getNBlocksCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class getNBlocksCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
    {

        private object[] results;

        internal getNBlocksCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState)
            :
                base(exception, cancelled, userState)
        {
            this.results = results;
        }

        /// <remarks/>
        public System.Xml.XmlElement Result
        {
            get
            {
                this.RaiseExceptionIfNecessary();
                return ((System.Xml.XmlElement)(this.results[0]));
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void GetResourcePropertyCompletedEventHandler(object sender, GetResourcePropertyCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetResourcePropertyCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
    {

        private object[] results;

        internal GetResourcePropertyCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState)
            :
                base(exception, cancelled, userState)
        {
            this.results = results;
        }

        /// <remarks/>
        public GetResourcePropertyResponse Result
        {
            get
            {
                this.RaiseExceptionIfNecessary();
                return ((GetResourcePropertyResponse)(this.results[0]));
            }
        }
    }

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void GetMultipleResourcePropertiesCompletedEventHandler(object sender, GetMultipleResourcePropertiesCompletedEventArgs e);

    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetMultipleResourcePropertiesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs
    {

        private object[] results;

        internal GetMultipleResourcePropertiesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState)
            :
                base(exception, cancelled, userState)
        {
            this.results = results;
        }

        /// <remarks/>
        public GetMultipleResourcePropertiesResponse Result
        {
            get
            {
                this.RaiseExceptionIfNecessary();
                return ((GetMultipleResourcePropertiesResponse)(this.results[0]));
            }
        }
    }
}